package net.kesumu.yushabu;

import com.umeng.message.PushAgent;

import net.kesumu.general.android.EasyStorage.EasyStorage;
import net.kesumu.general.android.view.CustomStatusBar;
import net.kesumu.yushabu.storage.YushabuDbHelper;
import net.kesumu.yushabu.R;
import net.kesumu.yushabu.R.id;
import net.kesumu.yushabu.R.layout;
import net.kesumu.yushabu.R.menu;
import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.os.Build;

public class SettingActivity extends Activity {
    
    private EasyStorage mEasyStorage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_setting);
        getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
        getActionBar().setCustomView(R.layout.actionbar);
        ((TextView)findViewById(R.id.actionbar_title)).setText(getString(R.string.title_activity_setting));
      //Custom the status bar
        CustomStatusBar customStatusBar = new CustomStatusBar(this);
        customStatusBar.setStatusBarColor(findViewById(R.id.statusBarBackground), getResources().getColor(R.color.main));


        if (savedInstanceState == null) {
            getFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment()).commit();
        }
        
        PushAgent.getInstance(this).onAppStart();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.setting, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        /*int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }*/
        return super.onOptionsItemSelected(item);
    }

    /**
     * A placeholder fragment containing a simple view.
     */
    public static class PlaceholderFragment extends Fragment {

        public PlaceholderFragment() {
        }

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_setting,
                    container, false);
            return rootView;
        }
    }
    
    public void startGeneralSetting(View clickedView) {
        Intent generalSettingAcitivityIntent = new Intent(SettingActivity.this, GeneralSettingActivity.class);
        startActivity(generalSettingAcitivityIntent);
    }
    
    public void startAboutSetting(View clickedView) {
        Intent aboutSettingAcitivityIntent = new Intent(SettingActivity.this, AboutSettingActivity.class);
        startActivity(aboutSettingAcitivityIntent);
    }
    
    public void logout(View clickedView) {
        mEasyStorage = new EasyStorage(this, getString(R.string.preference_file_key));
        
        mEasyStorage.putString("mMyPhotoPath", null);
        mEasyStorage.putString("mMyEmail", null);
        mEasyStorage.putString("mMyId", null);
        mEasyStorage.putString("mMyName", null);
        mEasyStorage.putString("mMySignature", null);
        mEasyStorage.putString("mMyGender", null);
        mEasyStorage.putString("mMyArea", null);
        mEasyStorage.putString("mYuYuChatId", null);
        
        
        YushabuDbHelper yushabuDbHelper = new YushabuDbHelper(getApplicationContext());
        yushabuDbHelper.onDowngrade(yushabuDbHelper.getReadableDatabase(), 1, 1);
        
        Intent intent = new Intent(MainActivity.BROADCAST_TYPE_FINISH);
        sendBroadcast(intent);
        Intent welcome = new Intent(this, WelcomeActivity.class);
        startActivity(welcome);
        finish();
    }

}
